/*
 * PageInfo
 * V 1.0.0
 * 2012/11/14
 *
 * Copyright © 2012 中国电信股份有限公司增值业务运营中心 版权所有
 *
 * 所有文字、代码资料，版权均属中国电信股份有限公司增值业务运营中心
 * 所有，任何公司或个人未经本司协议授权，不得复制、下载、存储或公开
 * 显示。违者本公司将依法追究责任。
 */
package cn.com.manager.page;

import cn.com.manager.utility.ApplicationConstants;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;

/**
 * 页面信息
 *
 * @author liutong01
 */
public class PageInfo {
    // 默认当前页为第一页  
    private Integer pageNo = 1;
    // 总记录大小
    private Integer count = 0;
    // 分页大小
    private Integer pageSize = ApplicationConstants.pageSize;

    /**
     * 总共xx页
     *
     * @return
     */
    public Integer getTotal() {
        int totalPage = count / getPageSize();
        return count % getPageSize() == 0 ? totalPage : totalPage + 1;
    }

    /**
     * 数据库从xx条开始查询
     *
     * @return
     */
    public int getOffset() {
        return (pageNo - 1) * getPageSize();
    }

    public Integer getPageNo() {
        return pageNo;
    }

    public void setPageNo(Integer pageNo) {
        this.pageNo = pageNo;
    }

    public Integer getCount() {
        return count;
    }

    public void setCount(Integer count) {
        this.count = count;
        if (pageNo > getTotal())
            pageNo = getTotal();
    }

    public Integer getPageSize() {
        return pageSize;
    }

    public void setPageSize(Integer pageSize) {
        this.pageSize = pageSize;
    }
}
